Configurable active stylus devices

ABSTRACT

A stylus device is disclosed that is capable of changing its output so that it can communicate and function with a multitude of touch controllers of a computing device. In an aspect, the stylus device receives a message including the configuration information from the computing device. The configuration information may include an encoding scheme corresponding to a format for encoding data to be sent to the computing device and an operating frequency. The stylus configures itself in the encoding scheme, and communicates with the computing device using the encoding scheme. For example, the stylus device may encode data using the encoding scheme and send the data at the operating frequency.

BACKGROUND

With the advancement of technology, the use and popularity of electronicdevices, such as mobile devices, has increased considerably. Mobiledevices, such as smart phones and tablet computers, typically have touchscreens that enable a user to operate the devices by touching the screenwith a finger or stylus type device. Stylus devices can mimic the use offamiliar writing tools, such as pens and pencils.

BRIEF DESCRIPTION OF DRAWINGS

For a more complete understanding of the present disclosure, referenceis now made to the following description taken in conjunction with theaccompanying drawings.

FIG. 1 illustrates an overview of a system for implementing embodimentsof the present disclosure.

FIG. 2 is a diagram conceptually illustrating example communicationsbetween a computing device and a stylus device according to embodimentsof the present disclosure.

FIG. 3 illustrates an exemplary stylus device according to embodimentsof the present disclosure.

FIG. 4 illustrates a tip portion of the exemplary stylus deviceaccording to embodiments of the present disclosure.

FIG. 5 illustrates the exemplary stylus device according to embodimentsof the present disclosure.

FIG. 6 illustrates a functional block diagram of components of theexemplary stylus device according to embodiments of the presentdisclosure.

FIG. 7 illustrates an exemplary analog front end component of theexemplary stylus device according to embodiments of the presentdisclosure.

FIG. 8 illustrates an exemplary transmitter component of the exemplarystylus device according to embodiments of the present disclosure.

FIG. 9 illustrates another exemplary transmitter component of theexemplary stylus device according to embodiments of the presentdisclosure.

FIG. 10 illustrates another exemplary transmitter component of theexemplary stylus device according to embodiments of the presentdisclosure.

FIG. 11 illustrates an exemplary proximity sensor component of theexemplary stylus device according to embodiments of the presentdisclosure.

FIG. 12A illustrates an exemplary pressure sensor component of theexemplary stylus device according to embodiments of the presentdisclosure.

FIG. 12B illustrates another exemplary pressure sensor component of thestylus device according to embodiments of the present disclosure.

FIG. 13 illustrates an exemplary power supply component of the exemplarystylus device according to embodiments of the present disclosure.

FIG. 14 illustrates an exemplary method of configuring a stylus deviceto communicate with a computing device according to embodiments of thepresent disclosure.

FIG. 15 illustrates an exemplary method of operation of a stylus devicein an active mode according to embodiments of the present disclosure.

FIG. 16 illustrates an exemplary method altering a mode of a stylusdevice according to embodiments of the present disclosure.

FIG. 17 illustrates an exemplary method of a low power and low latencymethodology of detecting touch down of a stylus device according toembodiments of the present disclosure.

FIG. 18 illustrates an exemplary method of changing an output of astylus device according to embodiments of the present disclosure.

FIG. 19 illustrates an exemplary power saving method of operating astylus device according to embodiments of the present disclosure.

FIG. 20 is a block diagram conceptually illustrating example componentsof a computing device according to embodiments of the presentdisclosure.

DETAILED DESCRIPTION

One drawback to operating a computing device with a stylus is thegeneral one-way communication of such operations where a stylus (throughuser control, a radio transmitter, or the like) communicates with thecomputing device but the computing device typically does not have theability to communicate with the stylus. If two-way communication wereenabled, it would allow the implementation of many more features andcustomization of stylus-device operations. Two-way radio control,however, can be expensive in terms of stylus cost and design. In anembodiment, offered is an active capacitive stylus that enables thecomputing device to communicate to the active stylus, for example, via atouch controller, using an electromagnetic communication channel, suchas a capacitive link or capacitive communication channel. This enablesbi-directional data transfer between the stylus and the computing devicewithout requiring a separate radio communication link to enabledevice-to-stylus communications. In this embodiment, the stylus may havea receiving electrode embedded in a ferrule portion of the styluscapable of detecting changes in the electric field around it. The touchcontroller of the computing device can modulate this electric field bydriving electrodes or antennae of the touch screen. This allows a highsignal to noise ratio on this capacitive channel and enablescommunication over the capacitive channel.

Another drawback to operating a stylus with a computing device is that anumber of styli operate at a fixed frequency or group of fixedfrequencies often as a result of a stylus being configured to work witha particular device, where the device specifies a fixed operatingfrequency or group of frequencies. Therefore, the communication betweena stylus and the computing device may degrade when there is externalnoise in the same spectra as that of the stylus' operating frequency. Inan embodiment, offered is an active stylus adapted to change itsoperating frequency to a second frequency or group of frequencies toaccommodate for a changing noise environment. The second operatingfrequency of the stylus may be determined by the touch controller of thecomputing device and communicated to the stylus device in messageincluding data using the capacitive communication channel discussedherein or through other media (e.g., Bluetooth, WiFi, infrared (IR),haptic, etc.).

Another drawback to operating a stylus with a computing device is thetype of touch controller the stylus is capable of communicating with.Most styli are tied to a certain type of touch controller. This maycause a user to purchase a new stylus for each different computingdevice the user purchases, and it causes manufacturers to produce newstyli every time the touch controller changes. If the stylus andcomputing device could communicate to identify to the stylus which touchcontroller is used in the computing device, it would allow the stylus toalter its output to function with the touch controller. In anembodiment, offered is an active stylus that is capable of configuringits operation so that it can communicate and function with a multitudeof touch controllers. In this embodiment, the computing device may alsobe adapted to transmit a message including data, such as a configurationID or other identifier corresponding to a requested mode of operation tothe stylus device.

Yet another drawback to operating a stylus with a computing device isthe power consumption of the stylus. An active stylus is said to be inwriting mode (also called ‘inking’ or in ‘touch down’ mode) when thereis a non-zero pressure measured on its tip thus indicating contactbetween the stylus tip and the computing device. Prior techniquesdetermined that a stylus was in touch down by periodically polling apressure sensor of the stylus and reading the pressure sensor's outputusing components such as an analog-to-digital converter (ADC). The ADCconversion of the analog sensor output is a power intensive process.Prior styli therefore faced a tradeoff between having a low latency ofdetecting touch down by increasing the pressure sensor sampling rate andconserving power by reducing the sample rate. In an embodiment, offeredis an active stylus that offers a low power and low latency methodologyof detecting touch down. The stylus uses an ultra-low power analogcomparator to monitor the pressure sensor output to detect when thepressure crosses a preset threshold. When the analog comparator detectsthis threshold cross, an event is triggered that enables a more precisemeasurement of the force using an ADC thus saving power while alsoenabling sensitive pressure detection.

The embodiments described herein provide an active capacitive stylusthat enables the computing device to communicate to the active stylususing the existing capacitive link; is adapted to change its operatingfrequency to accommodate for changing noise environment; is capable ofchanging its output so that it can communicate and function with amultitude of touch controllers; and provides a low power and low latencymethodology of detecting touch down. The described stylus is alsocapable of other operations as described below.

FIG. 1 illustrates an overview of a system 100 for implementingembodiments of the disclosure. The system includes a stylus device 102and a computing device 104 having a touch screen 106. In an embodiment,the stylus device 102 is an active capacitive type stylus including anactive tip 108 and a pressure sensor 110. The active tip 108, or otherportion of the stylus device 102, may generate a first signal (such asan electric field generated by the stylus device at an operatingfrequency) that may interact with a second signal (such as an electricfield of the computing device) generated by the computing device 104 toallow the computing device 104 to determine a position of the stylusdevice 102. For example, electrodes of the touchscreen 106 (that may bedriven by a touch controller) of the computing device 104 may beactivated to generate the second signal, and the active tip 108receives, and may amplify the second signal. The stylus device 102 maythen transmit the amplified signal (or first signal) that was detectedby the stylus device 102 back to the computing device 104 to allow thecomputing device 104 to determine the position of the stylus device 102relative to the touchscreen (such as the X-Y coordinate position of thetip 108 on the touchscreen 106).

The active tip 108 may also have a capacitance associated with it, and acapacitive link may be established between the stylus device 102 and thecomputing device 104, illustrated as 112. The capacitive link may be acommunication channel through which the stylus device 102 and thecomputing device 104 communicate using the electric fields generated byeach of the stylus device 102 and the computing device 104. Thecapacitive link may be established in response to the stylus device 102detecting a change in the electric field generated by the computingdevice 104 and recognizing the change as a communication. The capacitivelink 112 may be used by the stylus device 102 to measure interactionswith the computing device 104 (by detecting a change in the electricfield associated with contact between the stylus device 102 andcomputing device 104). The capacitive link 112 may also allow thecomputing device 104 to communicate information, such as operatingfrequency and/or touch controller type to the stylus device 102. Usingthe capacitive link 112, the computing device 104 may communicateinformation to the stylus device 102 by transmitting information or datausing a carrier frequency. The carrier frequency may be in a range ofabout 200-500 kilohertz (kHz), and more particularly in the 400 kHzrange. The information transmitted along the capacitive link may be usedto configure operations between the stylus device 102 and computingdevice 104.

For example, the computing device 104 may transmit a configuration ID,illustrated as 114, to the stylus device 102 via the carrier frequency.The configuration ID may correspond to a type of touch controller of thecomputing device 104 and/or may include other information. In thisexample, the configuration ID may correspond to an encoding scheme thestylus device should operate in when communicating with the computingdevice 104. The stylus device 102 configures its operation according tothe encoding scheme corresponding to the configuration ID, illustratedas 116. The stylus device 102 then communicates with the computingdevice 104 using the encoding scheme, illustrated as 118.

In another example, referring to FIG. 2, the device 104 may transmit afrequency ID, illustrated as 202, to the stylus device 102 via thecarrier frequency. In this example, the frequency ID may correspond to afrequency the computing device 104 desires to operate on. The stylusdevice 102 configures its operation according to the frequencycorresponding to the frequency ID, illustrated as 204. The stylus device102 then communicates with the computing device 104 using the frequency,illustrated as 206. The frequency ID, or other content, may becommunicated between the computing device and the stylus device using aBluetooth message, a WiFi message, an infrared message, electromagnetic(e.g., capacitive, inductive, resonance, radio frequency backscatter,etc.) message, or a haptic message.

FIGS. 3-5 illustrate an exemplary stylus device of the presentdisclosure. As illustrated in FIG. 3, the stylus device 102 includes abody or shaft portion 302, a barrel portion 304, a ferrule portion 306,and a tip portion or active tip 108.

The shaft portion 302 and the barrel portion 304 may be a singlemonolithic piece and function as an electrode(s) to transmit and receiveinformation over the capacitive communication channel. The portions maytherefore be made of conductive material and may have an insulativecoating. One or more of these portions may be connected to electricalcontacts on a microcontroller/processor of the stylus device 102 using a“pogo” pin or a similar contact based connector.

Referring to FIGS. 3 and 4, the ferrule portion 306 includes aninsulative exterior 402 and one or more conductive interior electrodes404. The electrode(s) 404 may be patterned on an interior surface of theferrule portion 306 or may be an independent part coupled to the ferruleportion 306. In an embodiment, the electrode(s) 404 include acoil/spring on an interior of the ferrule portion 306, an antenna etchedonto the interior of the ferrule portion 306 (such as an antenna createdusing Laser Direct Structuring (LDS)), or other type of electrode knownin the art capable of receiving/detecting an electric field). Theelectrode(s) 404 may detect changes in the electric field, for example,generated by the computing device. For example, as described above, thecomputing device 104 may communicate information to the stylus device102 over the capacitive communication channel by transmittinginformation or data using a carrier frequency. The electrode(s) 404 maythen receive the information over this capacitive communication at thecarrier frequency.

The tip 108 may be a two component mechanical part including aconductive polymer molded over a metallic shaft 406 coupled to aforce/pressure sensor 408 (for example, an optical pressure sensor, acapacitive pressure sensor, a piezoelectric sensor, a piezoelectricresistive sensor, or other sensor capable of measuring force/pressure).The conductive polymer of the tip 108 may allow the tip 108 to functionas an electrode and transmit and receive information over the capacitivecommunication channel. The conductive polymer may have a conductivitysufficient to transmit and receive transmissions to and from thecomputing device 104 using the capacitive communication channeldescribed herein. The conductive polymer may also be a material that isnot too soft or too hard. If a stylus tip is too hard, it may scratchthe touch screen of the computing device, whereas if the stylus tip istoo soft, it may leave residue on the touch screen (similar to a pencileraser). The conductive polymer of tip 108 may be designed to avoidthese problems.

The metallic shaft 406 coupled to the pressure sensor 408 provides amechanical path from the tip to the pressure sensor 408 to allow thepressure sensor 408 to measure the pressure at the tip 108. The metallicshaft 406 also provides a transmission path for carrying a signal (suchas, an electric field or frequency of operation to be generated by thestylus device 102) from a microcontroller or printed circuit board (PCB)of the stylus device 102 to the tip 108. This signal allows the stylusdevice 102 to communicate with the computing device 104, and allows thecomputing device 104 to determine a location (X-Y coordinates) of thestylus device 104 in relation to the touch screen of the computingdevice 104.

Referring to FIG. 5, in an embodiment, the stylus device 102 may alsoinclude one or more connectors 502, one or more switches or buttons 504,and one or more proximity sensors 506.

The connector(s) 502 may be disposed on an exterior of the stylus device102, for example on an exterior of the body/barrel portion 302/304. Theconnector(s) 502 may serve as a magnetic means to attach the stylusdevice 102 to the computing device 104 and other accessories. Theconnector(s) 502 may also provide an electrical interface between thestylus device 102 and the computing device 104 (for example, a USBconnector). Connector 502 may be used to re-program the stylus device102 and/or for charging the stylus device 102.

The button(s) 504 may be disposed on an exterior of the stylus device102, for example on an exterior of the body/barrel portion 302/304. Asillustrated, the button(s) 504 are in the form of a rocker switch.However, it should be appreciated that other types of switches may beused separately or in combination. The button(s) 504 may be used toprovide and allow for the user to switch between different modes offunction of the stylus device 102. For example, the button(s) 504 mayallow the user to switch between an eraser mode and a write mode, aswell as other modes of function.

The proximity sensor(s) 506 may be disposed on an exterior of the stylusdevice 102, for example on an exterior of the body/barrel portion302/304, or interior to the stylus. The proximity sensor(s) 506 areadapted to detect when a user is holding the stylus device 102. In anembodiment, there may be three proximity sensors 506 distributedradially (about 120° apart). In another embodiment, there may be twoproximity sensors 506 distributed radially (about 180° apart). Theproximity sensor(s) 506 may detect that a user is gripping the stylusthrough a number of techniques, such as detection of conductivity of auser's fingers. The proximity sensor(s) 506 may share a same shieldelectrode, and the shield electrode may be connected to a ground of themicrocontroller/printed circuit board (PCB) of the stylus device 102.

A functional block diagram of example components of the stylus device102 is described with reference to FIG. 6. As illustrated in FIG. 6, thestylus device 102 may include one or more of a microcontroller 602, oneor more I2C (inter-integrated circuit) communication ports 604,button(s) 504, one or more serial wire debug (SWD) ports 606,accelerometer 608, Bluetooth 610, analog front end (AFE) 612, one ormore transmitters 614, proximity sensor(s) 506, pressure sensor 110, andpower supply module 616.

The microcontroller 602 may be any type of microcontroller. Themicrocontroller 602 may be capable of supporting binary phase-shiftkeying (BPSK) encoding and an operating frequency in the range of about180 to about 300 kHz; amplitude-shift keying (ASK) encoding and anoperating frequency in the range of about 100 to about 170 kHz;frequency-shift keying (FSK) encoding and an operating frequency in therange of about 20 to about 120 kHz, and other types of encoding schemes.The microcontroller 602 may include memory sufficient to store theencoding schemes. The microcontroller 602 may also include one or moregeneral-purpose input/outputs (GPIOs) and other such components, and anoscillator (illustrated in FIGS. 7-8 and 11-13 as crystal oscillator702) to reduce timing jitters on pulse-width modulation (PWM).

The I2C communication port(s) 604 may be coupled to the microcontroller602 and the magnetic connector(s) 502. Most microcontrollers have eitherdedicated I2C ports or can natively configure any GPIO to be part ofI2C. Software libraries may also be used to communicate I2C overstandard GPIOs.

The button(s) 504 may also be coupled to the microcontroller 602. Asdescribed above, the button(s) 504 may be used for various functions,such as to allow for the user to switch between different modes offunction of the stylus device. For example, the button(s) 504 may allowthe user to switch between an eraser mode and a write mode, or performother functions. GPIO pins connected to the button(s) 504 may be setupinput pins with internal pull ups. When a user presses a button 504,these GPIO pins are connected to ground through switches, such assingle-pole, single-throw (SPST) switches. This may toggle the inputfrom a default state of “1” to “0”. An optional capacitor may also beadded in parallel to the buttons to debounce the switches if desired.

The SWD communication port(s) 606 may be coupled to the microcontroller602 and are generally connected to ports on the stylus. These ports maybe hidden. The SWD port(s) 606 may be used to program themicrocontroller 602 and obtain debug data.

The accelerometer 608 may be coupled to the microcontroller 602 andadapted to determine when the stylus device is being moved, such as whena user picks-up the stylus device and/or is using the stylus device.

The Bluetooth component 610 may optionally be included and be coupled tothe microcontroller 602 and adapted to transmit and receive informationto and from the computing device. It should further be appreciated thatadditional or alternative communication component(s) may be used, suchas WiFi, infrared (IR), haptic, or other component.

Referring to FIGS. 6 and 7, the AFE 612 is a communication componentthat may be coupled to the microcontroller 602 and may serve as acommunication interface between the touch controller of the computingdevice and the stylus device. The AFE detects the electric field of thecomputing device and passes its measurements to the microcontroller 602.For example, the ferrule electrode 404 in the AFE may receive theelectric field generated by the computing device 102. The AFE 612 maysense the electric field revived by the ferrule electrode 404 and passesthe measurement of the electric field to the microcontroller 602. Asillustrated, the ferrule electrode 404 may be coupled to the input stageof amplifier 704 and the common terminal of switch 706. The output ofthe amplifier 704 is coupled to a multi-threshold analog comparator pinof the microcontroller 602. In an embodiment, under normal operation,the ferrule electrode 404 (illustrated in FIG. 4) is coupled to a DCreference voltage (Vref) through the switch 706 and the amplifier stageis disabled. In an embodiment, the AFE 612 may include one or morecomponents, such as, a low power instrumentation amplifier 704 and a lowleakage SPST switch 706, one or more resisters, such as resistors R1-R3,one or more noise filtering components, such as a band pass filter andan automatic gain controller, and/or other components.

Referring to FIGS. 6 and 8, the stylus may provide for a combination oftransmission configuration schemes by enabling independent activation ofdifferent transmitters 614 located in one or more of the tip 108 (whichmay function as a tip electrode), the barrel/body 304/302 (which mayfunction as barrel/body electrode(s)), and the ferrule electrode 404.For example, the various electrodes may be activated in accordance witha certain encoding scheme. When the stylus device is configured in aBPSK encoding scheme, the tip 108, the barrel/body 304/302, and theferrule electrode 404 may be activated to function as transmittingelectrodes. When the stylus device is configured in a ASK encodingscheme, the tip 108 or both of the tip 108 and the ferrule electrode 404may be activated to function as transmitting electrodes. Similarly, whenthe stylus device is configured in a FSK encoding scheme, the tip 108may be activated to function as a transmitting electrode.

In other configurations, the various transmitters may be selectivelyactivated or deactivated to conserve power, provide for increased signalstrength, and/or to allow for increased hover distance (i.e., thedistance between the stylus device and the computing device at which thestylus and computing devices are capable of communicating even thoughthey are not in physical contact). For example, to provide for increasedsignal strength, all of the transmitting electrodes may be activated(i.e., the tip 108, the barrel/body 304/302, and the ferrule electrode404). To provide for increased hover distance, only the ferruleelectrode 404 may be activated for transmission. Similarly, to conservepower, only the tip 108 may be activated to function as a transmittingelectrode. It should be appreciated that each electrode may be activatedor deactivated independently to provide for a multitude of combinations.

To obtain an acceptable signal to noise ratio (SNR), the tip 108 and theferrule electrode 404 may be driven in phase. Due to a user holding thebody of the stylus, when the barrel/body 304/302 is activated as atransmitter, the signal/electric field generated by the barrel/body304/302 during transmission may cancel out the signal/electric fieldgenerated by the tip 108 when the tip is also transmitting. To avoidthis effect, transmissions from the tip 108 may be driven 180 degreesout of phase from transmission from the barrel/body 304/302. Driving thetransmissions from barrel/body 304/302 180 degrees out of phase relativeto the transmissions from to the tip 108 may cause the signal of thebarrel/body 304/302 to have a cumulative effect; thereby resulting in anincreased signal to noise ratio.

In an embodiment, the transmitted signals from the transmitter(s) 614are square wave signals in the range of about 10 kHz to about 250 kHz.Their amplitudes dictate the SNR of the stylus device 102 andconsequently the hover distance between the stylus device 102 andcomputing device 104. For example, the larger the signal strength/SNR,the larger the hover distance may be and still enable communicationbetween the stylus 102 and computing device 104. Conversely, the lowerthe signal strength/SNR, the lower the hover distance may be. However,it is important to ensure that the stylus signal does not saturate thetouch controller of the computing device. Therefore, the stylus devicemay provide a way to adjust the amplitude of its transmitted signals(i.e., the signals transmitted by the tip 108, barrel/body 304/302, andthe ferrule electrode 404). Transmission amplitude(s) may be adjusted byadjusting the HV (high voltage) rail through Rfb2 (illustrated in FIG.13). The amplitude may also be adjusted by activating or de-activatingtransmission from one or more of the tip 108, barrel/body 304/302, andthe ferrule electrode 404. For example, the computing device 104 maycommunicate with the stylus device 102 to cause the stylus device 102 toincrease or decrease transmission amplitude based on the strength of thesignal/electric field the computing device 104 receives from the stylusdevice 102. If the strength of the signal is low, the computing device104 may cause the stylus device 102 to increase the transmissionamplitude; and if the strength of the signal is high, the computingdevice 104 may cause the stylus device 102 to decrease the amplitude(for example, to avoid saturation).

To generate the transmitted signals, a PWM waveform generated by themicrocontroller 602 is used to toggle HV switches SW1, SW2 and SW3connected to the electrodes between HV and ground. This creates a squarewave whose rise and fall times are dictated by the output capacitance ofthe switches SW1, SW2 and SW3. As described above, the transmitter(s)614 provide for a combination of configuration schemes by enablingindependent activation of one or more of the tip 108, the barrel/body304/302, and the ferrule electrode 404 for transmission. Activation ofeach of the tip 108, the ferrule electrode 404, and the barrel/body304/302 may be controlled independently by opening and closing therespective switches SW1, SW2 and SW3 to HV.

Alternate implementations of the circuitry for one or more of thetransmitters may include using a standard differential transformer drive(as illustrated in FIG. 9) and/or a standard boot converter topology todirectly generate the waveform (as illustrated in FIG. 10), as known inthe art.

Referring to FIGS. 6 and 11, the proximity sensor(s) 506 may be used todetect when the stylus is being held by the user. The proximitysensor(s) may include single ended capacitive sensor to detect when auser is holding the stylus device. The proximity sensor(s) 506 may beimplemented using two GPIO lines per sensor. For example, as illustratedin FIG. 11, a first sensor Prox1 is coupled to the microcontroller 602via GPIOs (P1) and (P2); a second sensor Prox2 is coupled to themicrocontroller 602 via GPIOs (P3) and (P4); and a third sensor Prox3 iscoupled to the microcontroller 602 via GPIOs (P5) and (P6). It should beappreciated that the proximity sensor(s) 506 pads may be surrounded by aground plane. Thus, the micro controller 602 may determine how the useris holding the stylus (i.e., which proximity sensor(s) detect the user'shand) based on which GPIO(s) include a signal.

To detect when a person is touching the proximity sensor(s) 506, asequence of actions are taken for each of the sensors Prox1, Prox2, andProx3. In an example, a generic GPIO may be used to implement the touchor proximity sensor(s) 506. In this example, the following actions maybe taken for the first sensor Prox1: pull GPIOs (P1) and (P2) to ground,set up a timer, set the sensing GPIO (GPIO (P2) in this example) in highZ input mode, and set up an interrupt service routine (ISR) to stop thetimer when the pin goes high. For example, the timer is started and GPIO(P1) is set to high. When the ISR is triggered, the time lapsed ismeasured. When a user (such as a user finger) is in proximity, the timelapse may increase by at least 1-2 orders of magnitude. This increase inthe time lapse may be used to indicate that the user is touching theproximity sensor(s) 506. When the timer expires, the stylus 102 maydetermine that the user has put the stylus down and may execute certainpower saving functions, depending on configuration of the stylus 102.

Referring to FIGS. 6 and 12A, the pressure sensor 110 may be adapted tomeasure at least up to 10 N of force while being linear in the 1-4 Nrange. In an embodiment, the pressure sensor 110 is a force sensitiveresistor (FSR) based pressure sensor. The output range of the FSR basedpressure sensor may be about 170 mV with sensitivity about 13 mV/N. Inan embodiment, an instrumentation amplifier 1202 with a gain of about 20may be used in differential mode to amplify the pressure sensor outputbefore it's decoded by the ADC.

In another embodiment, referring to FIG. 12B, the pressure sensor 110may be connected to the microcontroller 602 using two GPIOs. Pressuredetected by the pressure sensor may be determined by the microcontrollerby measuring voltage using an ADC pin on the microcontroller 602. Inthis embodiment, the GPIO pin (GPIO (2)) coupled to the FSR may bepulled high and the GPIO pin (GPIO (1)) coupled to the thermistor (THR)pulled to ground. In this configuration, the measured voltage on the ADCline is: Vadc1=Vdd*(FSR)/(FSR+(THR∥R)). The GPIO (GPIO (1)) coupled tothe thermistor may then be held high along with the FSR. This results ina measured voltage on the ADC line of:Vadc2=Vdd*(FSR∥THR)/((FSR∥THR)+R). Using these two equations, and thevalue of the resistance of the thermistor and the FSR, themicrocontroller may determine the pressure levels detected by thepressure sensor 110 using the voltage seen on the GPIOs.

Referring to FIGS. 6 and 13, the power supply module 616 provides twounipolar supply voltages (a low voltage supply 1302 and a high voltagesupply 1304). In an embodiment, the low voltage supply 1302 is always onand is used to power the microcontroller 602 and the sensors 506, 110,and optionally other components. The high voltage supply 1304 is used topower the transmitters 614. The high voltage supply 1304 may be enabledor activated when the stylus device is transmitting a signal andtherefore may be in the off or de-activated state when the stylus deviceis not transmitting to the computing device. This allows power to beconserved when the stylus device is not being used.

The components described above may be implemented to perform variousfunctions such as enable the computing device to communicate to thestylus device using a capacitive link; change the operating frequency ofthe stylus device to accommodate for a changing noise environment;change the output of the stylus device so that it can communicate andfunction with a multitude of touch controllers; and provide a low powerand low latency methodology of detecting touch down.

A method of configuring the stylus device to communicate with thecomputing device using the existing capacitive link is described withreference to FIG. 14, which shows the stylus transitioning betweenvarious operational states 1400. Beginning with the stylus device insleep mode, illustrated as block 1402, when a user picks up the stylusdevice, the proximity sensor(s) on the stylus detect the user'stouch/proximity, illustrated as 1404. Upon detecting the user'stouch/proximity, the state machine of the stylus device is changed to bein a beacon mode, illustrated as block 1406. In this mode, the stylusdevice emits a wave, for example, a square wave at about 250 kHz (orother high frequency that is outside normal range of noise), and enablesthe AFE to listen for a touch controller communication. The 250 kHzbeacon is detected by the computing device 104, such as through thetouch controller using circuitry capable of detecting the beacon signalthat is integrated into most touch controllers.

In response to detecting the wave output by the stylus device, the touchcontroller may be configured to transmit a handshake packet to thestylus device using the capacitive link by using drive lines/electrodesof the touch screen to change the electric field. In this mode, all theelectrodes of the touch screen may be activated simultaneously (similarto “blanking” between scan frames), which can be received by the stylusdevice. This activation of the electrodes causes the computing device toemit a signal (electric field) different than the electric field emittedby the computing device in normal operation. By activating all (or asubstantial number of) the electrodes, the SNR of the signal may behigh. This allows high frequencies to be used to establish a low noisecommunication channel. The stylus device detects this change in theelectric field or signal emitted by the computing device and recognizesthis signal as a communication.

As part of the handshake, or in a different communication, using theelectrodes, the touch controller may transmit configuration informationto the stylus device 102 to request the stylus device 104 to operate ina certain mode. The stylus may use this configuration information toconfigure (1409) its operation to match the computing device 104. Theconfiguration information may include an identifier or identificationcode of the computing device 104, an identifier or identification codecorresponding to an encoding scheme and/or an operating frequency storedon the stylus device 102, or other information for communicating a modeof operation to the stylus device 102.

In an example, the touch controller transmits a 3 bit Manchester encodedbit pattern in response to sensing the stylus device. The 3 bitManchester encoding may aid in error correction by enabling majoritypolling schemes. A preliminary part of the packet consists of afrequency synch (for example, a 15 pulse frequency sync) where thefrequency of the pulses is the requested frequency of transmission fromthe stylus device. For example, when the computing device isrequesting/instructing the stylus to operate at a frequency of 85 kHz,the computing device may activate all the electrodes on the touch panelsimultaneously, fifteen times at 85 kHz, resulting in number ofelectronic pulses corresponding to the desired communication frequency.In another embodiment, the computing device may only activate theelectrodes in proximity to the stylus device to cause the communicationto occur.

The frequency synch may be followed by a 2 bit start of frame (0,0), a 3bit identifier or identification code (also referred to herein as aconfiguration ID), and a 2 bit end of frame (1,1). This handshake packetmay be transmitted by the touch controller about every 10 ms. In thetime between transmissions, the touch controller listens for a stylustransmission that matches or acknowledges the requested operation. Oncethe correct stylus operation is detected, the touch controller may ceasetransmitting the handshake signals. The configuration ID includes a3-bit code that represents the encoding scheme used/supported by thetouch controller of the computing device to communicate with a stylusdevice. For example, the configuration ID (1,1,1) may indicate that thetouch controller of the computing device uses frequency shift keying(FSK) scheme for communicating with stylus devices. Similarly,configuration ID (0,0,0) may represent the BPSK communication scheme andconfiguration ID (0,1,0) may represent the ASK communication scheme.

In response to a successful handshake, illustrated as 1408, the stylusdevice may configure itself to operate in the requested encoding schemeor mode (i.e., FSK, BPSK or ASK), and enter an active mode, illustratedas block 1410. For example, once the stylus device wakes up and receivestwo consecutive valid configuration IDs from the computing device, thestylus device loads the relevant sub routines from the memory andchanges its state from the beacon mode to the active mode. However, whenthe handshake fails or times out (T/O), illustrated as 1412, the stylusdevice may re-enter the sleep mode, illustrated as block 1402.

In an embodiment, the stylus device may also configure thetransmitters/electrodes in an active (i.e., transmit) mode or set to thetransmitters/electrodes to ground (i.e., an inactive mode) based on theconfiguration ID received from the computing device. For example, one ormore of the tip electrode, barrel/body electrodes, and the ferruleelectrode may be deactivated to allow the stylus device to operate withcertain types of touch controllers and/or operate in a similar manner toa different type of stylus device that may not use the particulardeactivated electrode(s). In an embodiment, the tip, the barrel/body,and the ferrule electrode may be activated when the stylus device isconfigured in a BPSK encoding scheme. In an embodiment, the tip or bothof the tip and the ferrule electrode may be activated and the remainingelectrodes may be set to ground when the stylus device is configured ina ASK encoding scheme. In another embodiment, the tip may be activatedand the remaining electrodes may be set to ground when the stylus deviceis configured in a FSK encoding scheme. It should be appreciated thatvarious other configurations of the electrodes are possible.

In other configurations, the various electrodes may be selectivelyactivated or grounded to allow the stylus device to conserve power. Forexample, to conserve power, only the tip may be activated and theremaining electrodes may be deactivated. It should be appreciated thateach electrode may be activated or deactivate independently to providefor a multitude of combinations.

Referring to FIG. 14, when in active mode, the stylus device mayre-enter the sleep mode, illustrated as block 1402, in response to theuser discontinuing use of the stylus device. For example, in activemode, the stylus device may poll the proximity sensor(s) and/or thepressure sensor to determine whether the user is still using the stylusdevice. In response to the proximity sensor(s) not detecting any touchby the user and/or the pressure sensor reading a pressure of zero for acertain period of time (i.e., a pressure and/or proximity based timeout), illustrated as 1414 and/or 1416, the stylus device may re-enterthe sleep mode, illustrated as block 1402. Thus, if the pressure sensorand/or the proximity sensor does not register a reading or the readingis below a threshold for a certain amount of time, then the stylusdevice is not being used and the stylus device can enter the sleep mode.In other words, the stylus device continues to operate in the activemode until a pressure and/or proximity based time out is achieved.

During operation in the active mode, the stylus device may continuouslyor periodically listen for communications from the touch controller. Ifthe computing device detects noise at a current operating frequency ofthe stylus device (such as a pre-selected or default frequency) thatinterferes with stylus-computing device communications, or if the touchcontroller identifies a better (i.e., higher quality) operatingfrequency that can be used, the touch controller may start transmittinghandshake packets as described above to change the stylus device'sbehavior to operate at a different or second operating frequency, asdescribe in further detail below.

A method 1500 of operation of the stylus device in the active modeaccording to an embodiment of the disclosure is described with referenceto FIG. 15. FIG. 15 illustrates a method 1500 to determine when thestylus is being used and should remain in active mode and when thestylus is not being used and should enter a sleep mode to conservepower. In this embodiment, it is assumed that the stylus device is inthe sleep mode at the beginning of method 1500. At block 1502, thestylus device determines whether the stylus device is being used by auser. For example, the stylus device may make this determination basedon a signal from a proximity sensor indicating a nearby user. If theproximity sensor indicates that the stylus device is being used by auser, the high voltage (HV) circuit is enabled at step 1504. If at block1502, the proximity sensor indicates that the stylus device is not beingused by the user, the stylus device remains in the sleep mode,illustrated by block 1506. In some embodiments, the stylus device maypoll the proximity sensor to determine whether the proximity sensor hasdetected the presence of a user and if no reading from the proximitysensor is received/detected for a predefined time, the stylus device mayreturn/remain in the sleep mode.

In response to the HV being enabled, the stylus device transmits abeacon signal or a square wave to the computing device, illustrated asblock 1508. As described above, in this mode, in an embodiment, thestylus device emits a square wave, for example, at about 250 kHz (orother high frequency that is outside normal range of noise), and enablesthe AFE to listen for a touch controller communication. Upon enteringthe beacon mode, the stylus device initiates a timer0 (T0), illustratedas block 1510, and listens for a communication from the computingdevice, illustrated as block 1512. As described above, the computingdevice, using its touch controller, may transmit a 3 bit Manchesterencoded bit pattern in response to sensing the stylus device. The 3 bitManchester encoding may include a frequency synch, followed by a 2 bitstart of frame, a 3 bit configuration ID, and a 2 bit end of frame.

The stylus device determines whether the configuration ID has beenreceived, illustrated as block 1514. In response to the configuration IDbeing received, the stylus device configures the stylus device tooperate using the encoding scheme or operation mode corresponding to theconfiguration ID of the computing device (e.g., FSK, BPSK or ASK),illustrated as block 1516, and shifts to active mode. Configurationinformation may be stored in a memory of the stylus device and retrievedbased on the received configuration ID. During regular operation in theactive mode, the stylus device may continue to poll the pressure (P)sensor and buttons to determine whether the stylus device is being used,illustrated as block 1518. The stylus device also continuously orperiodically listens for communications from the touch controller,illustrated as block 1520, to determine whether the computing device istransmitting information that may cause the stylus device to change thestylus device's behavior/operation.

If the touch controller detects noise at a current operating frequencythat the computing device and stylus device are using to communicate(for example, an operating frequency associated with the configurationID described above), the touch controller may transmit handshake packetsas described above to change the stylus device's behavior/operation. Forexample, the touch controller may transmit a change data packetcommunication including information corresponding to a new/secondoperating frequency having a better signal to noise ratio (SNR) to beused for communication with the computing device. This may prompt thestylus device to change its operation and operate using the secondoperating frequency. The stylus device receives this communication andchanges the operating frequency of the stylus device (otherwise referredto a frequency hopping), illustrated as block 1522.

During operation, the stylus device may determine whether the stylus isstill being held by a user, for example by polling the pressure sensorand buttons and determining whether the pressure sensor is reading zeroand a timer1 (T1) (a pressure timeout timer) is set (for example, atabout 1 minute), illustrated as block 1524. If T1 is not set, the stylusdevice enables T1, illustrated as block 1526. When T1 is or has beensent, the stylus device determines whether T1 has expired, illustratedas block 1528. If T1 has not expired, the stylus device continues topoll the pressure sensor and buttons and the process returns to block1518. If at block 1528 it is determined that T1 has expired (i.e., therehas been no pressure reading above zero for a certain amount of time,for example, about 1 minute), the stylus device checks whether theuser's touch/proximity continues to be detected by the proximitysensor(s), illustrated as block 1530. This check will indicate that evenif the stylus has not been used to contact the device within a certainamount of time, the device is still being held by the user. If no user'stouch/proximity is detected, the stylus device returns to sleep mode,illustrated as block 1506.

However, if the user's touch/proximity continues to be detected, thestylus device enables a timer2 (T2) (a proximity/touch timeout timer,for example, set at about 3 minutes), illustrated as block 1532, anddetermines whether T2 has expired, illustrated as block 1534. If T2 hasnot expired, the stylus device moves back to block 1518 and continues topoll the pressure sensor and buttons. However, if T2 has expired, thestylus device proceeds to disable the HV and the proximity sensor(s),illustrated as block 1536.

Optionally, the stylus device may then determine whether a button togglehas occurred, illustrated as block 1538. If no button toggle hasoccurred, the stylus device continues to poll the buttons to determinewhether a button toggle has occurred. If a button toggle has occurred,the stylus device enables the proximity sensor(s), illustrated as block1540, and determines whether the proximity sensor(s) detect the user'stouch/proximity, illustrated as block 1502. If the user'stouch/proximity is not detected, the stylus device enters the sleepmode, illustrated as block 1506.

Referring back to block 1514, in response to the configuration IDfailing to be received, the stylus device determines whether T0 (alistening timeout timer, for example, set at about 30-45 seconds) hasexpired, illustrated as block 1542. In response to T0 not being expired,the stylus device continues to listen for a communication from the touchcontroller, illustrated as block 1512. However, in response to T0 beingexpired, the stylus device proceeds to block 1536 to disable the HV andthe proximity sensor(s), and follows the path of blocks 1538-1540 asdescribed above.

In an embodiment, the stylus device 102 may be configured with firmware(or other code) containing a number of various modes ofoperation/encoding/frequency schemes that correspond to differentcomputing devices. The stylus device 102 may be pre-loaded with suchfirmware or may be updated to include such firmware. The modes ofoperation/encoding schemes may be identified by an identifier oridentification code, such as a device identifier or configuration ID,which may relate to a specific computing device. In this embodiment, thestylus device 102 may be configured to operate with specific computingdevices 104 using the device identifiers. For example, the computingdevice 104 or touch controller of the computing device 104 may transmita device identifier to the stylus device 102 and the stylus device 102may access or pull the corresponding firmware from memory and configureitself in the mode of operation/encoding scheme corresponding to thereceived device identifier. The stylus may then be configured to operatewith the corresponding computing device.

In an embodiment, the stylus device 102 may not be pre-loaded withfirmware corresponding to a specific identifier or identification code.In this situation, the stylus device 102 may request the computingdevice 104 to send the corresponding firmware to the stylus device 102.The computing device 104 may send this firmware to the stylus device 102using the capacitive channel or other communication channel, such asBluetooth, IR, etc.

In an embodiment, the identifier or identification code may relate to afrequency of operation (which may be a single frequency or a group offrequencies). The identifier or identification code may be a code to alook-up table where the frequency of operation is located. In thisembodiment, the stylus device 102 may be configured with firmware (orother code) containing a number of various frequencies or groups offrequencies. The stylus device 102 may then use the look-up table tofind and select the operating frequency that corresponds to anidentifier or identification code received from the computing device104.

In another embodiment, once the appropriate configuration sub-routine(s)have been loaded, the stylus device may remain in that configuration.Thus, once the stylus is in the correct configuration to interact withthe computing device, the stylus device may transition to and fromactive and sleep mode without requiring the subroutine(s) to be loaded.A method 1600 of utilization of the proximity sensor(s), accelerometer,and pressure sensors to alter the mode of the stylus between an activemode and a sleep mode is described with reference to FIG. 16. Beginningwith the stylus device in sleep mode, illustrated as block 1602, theproximity sensor(s) on the stylus device detect whether a user istouching the stylus device, illustrated as block 1604. If the proximitysensor(s) detect no touch from the user, the stylus device remains insleep mode, illustrated as block 1602.

However, when the proximity sensor(s) detect the user's touch, thestylus device shifts to a wake detect mode, illustrated as block 1606.In this mode, the stylus device activates the accelerometer and pollsthe accelerometer to determine whether there is any movement detected,illustrated as block 1608. If the accelerometer does not detect anymovement, the touch sensor may be recalibrated (i.e., set to zero),illustrated as block 1610, to avoid further false touches and the stylusdevice returns to the sleep mode, illustrated as block 1602. However, ifthe accelerometer detects movement, the stylus device enters an activemode, illustrated as block 1612.

In the active mode, the stylus device polls the proximity sensor(s) todetermine whether the proximity sensor(s) detect the user's touch,illustrated as block 1614. If the proximity sensor(s) does not detectthe user's touch beyond a timeout event, the stylus device returns tothe sleep mode, illustrated as block 1602. If the proximity sensor(s)detects the user's touch, the stylus device polls the pressure sensor todetermine whether the pressure sensor detects a non-zero pressure for acertain period of time (i.e., beyond a timeout event), illustrated asblock 1616. If the pressure is non-zero, the stylus device remains inthe active mode, illustrated as block 1612. However, if the pressure isbot non-zero, the touch sensor may be recalibrated, illustrated as block1610, to avoid further false touches and the stylus device returns tothe sleep mode, illustrated as block 1602.

In an embodiment, the stylus device in the active mode functions in oneof two operational modes 1) hover or 2) touch down. In this embodiment,the pressure sensor output is used to determine the operational mode ofthe stylus. When there is no pressure detected but the stylus device iscapable of communicating with the computing device, the stylus may bedetermined to be hovering within a certain distance of the screen. Adetection of a non-zero pressure reading from the stylus' pressuresensor may indicate that the tip of the stylus device is likely inphysical contact with the touch screen (i.e., a touch town event haslikely occurred). Thus the stylus may be determined to be in touch downmode.

In an embodiment, the pressure sensor and power supply are utilized toprovide a low power and low latency methodology of detecting touch downwhen the stylus device is in hover mode. A low power and low latencymethodology 1700 of detecting touch down is described with reference toFIG. 17. In the active mode, such as when the stylus device is hovering,illustrated as block 1702, the stylus device enables the pressure sensorand monitors and measures the output of the pressure sensor using a lowpower analog comparator, illustrated as block 1704. The stylus deviceutilizes the analog comparator to determine when output from thepressure sensor meets or exceeds a threshold (i.e., indicating a touchdown event has likely occurred), illustrated as block 1706.

When the analog comparator detects the output of the pressure sensorcrossing the threshold, the stylus device enables the pressure sensorand activates (i.e., powering) and measures the output of the pressuresensor using an ADC, illustrated as block 1708, to obtain a moreaccurate measure of the output of the pressure sensor. When powering theADC, the device provides power to the ADC, enabling operation of theADC. When the ADC draws power, it consumes battery life, but enablesmore accurate measurement of the output of the pressure sensor. When theADC is deactivate or powered down, power is not provided to the ADC,thus conserving battery life. Upon activating the ADC, the stylus devicemay also deactivate (i.e., power down) the analog comparator. Once theoutput of the pressure sensor is measured using the ADC (for example anADC illustrated in FIG. 12A or FIG. 12B), the stylus device disables thepressure sensor and the ADC (for example, powering down the ADC),illustrated as block 1710, and sets the pressure value equal to the ADCvalue, illustrated as block 1712, thus noting the value of the measuredpressure (as indicated by the ADC value) for that particular operationof the stylus. The value of the measured pressure may be transmitted tothe computing device for various functions, for example for determiningthe width of a pen stroke when the computing device is configured todraw the width corresponding to the pressure between the stylus tip andthe computing device.

The stylus device then sets timer0 (T0) (for example, at about 10 ms),illustrated as block 1714, and determines whether T0 has expired,illustrated as block 1716. If T0 has not expired, the process continuesto monitor the timer. If T0 has expired, the stylus device determineswhether the last pressure output (i.e. the pressure output from block1712 described above or block 1722 described below) was equal to zero,illustrated as block 1718. If the last pressure output was greater thanzero, the process returns to block 1708 and continues as described.However if the last pressure output was zero, the stylus device revertsback to block 1704, enables the pressure sensor and monitors andmeasures the output of the pressure sensor using the analog comparator,and de-activates the ADC.

When the analog comparator detects the output of the pressure sensor hasnot crossed the threshold, the stylus device disables the pressuresensor and the analog comparator, illustrated as block 1720, and setsthe pressure value equal to zero, illustrated as block 1722. The stylusdevice then sets T0, illustrated as block 1714, and continues asdescribed above.

In another embodiment, the stylus device may communicate with more thanone computing device and configure the stylus operation so that it cancommunicate and function with different touch controllers of thedifferent computing devices. A method 1800 of configuring the stylus tothe device is described with reference to FIG. 18. The method 1800 is analternative method of configuring and reconfiguring the stylus to workwith a particular computing device than those discussed above. Inparticular, method 1800 describes the use of a timer T1, that is a timerused to establish a time for matching a frequency between the stylus anddevice. When the stylus device 102 is in an active mode, illustrated asblock 1802, the stylus device may enable a communication module, such asBluetooth, WiFi, infrared (IR), haptic, etc., illustrated as block 1804,and establish a connection with the host computing device 104,illustrated as block 1806. The stylus device then determines whether thehost computing device is a new host computing device, illustrated asblock 1808.

If the host computing device is a new host computing device, the stylusdevice may receive a communication or message including data from thehost computing device identifying the encoding scheme (i.e., FSK, BPSKor ASK), and update the encoding scheme of the stylus device,illustrated as block 1810, based on the communication from the hostcomputing device. The stylus device may then set timer1 (T1) (forexample, to 1 second), illustrated as block 1812, and determine whetherT1 has expired, illustrated as block 1814. If T1 has not expired, thestylus device may continue to poll T1. If T1 has expired, the stylusdevice may obtain a new output operating frequency from the hostcomputing device, illustrated as block 1816. This may occur when thetouch controller of the host computing device detects noise at a currentor first operating frequency (which may be a first group offrequencies), and the touch controller may transmit data to change thestylus device's behavior to use a second operating frequency (which maybe a second group of frequencies).

If the host computing device is an existing host device (i.e., not a newhost device), the stylus device may set timer1 (T1), illustrated asblock 1812, and continue the process as described above, and/or obtain anew output operating frequency from the host computing device,illustrated as block 1816, if the touch controller decides to change theoperating frequency of the stylus device. The touch controller maydecide to change the operating frequency of the stylus device due tonoise being present on the current operating frequency or simply becausethere is another frequency that is better or than the current operatingfrequency.

In an embodiment, a power saving method 1900 of operating the stylusdevice is described with reference to FIG. 19. When the stylus device isin active mode, illustrated as block 1902, the stylus device may set atimer3 (T3) to an output frame rate (for example, at about 10 ms for aburst mode and 0 ms for a continuous mode), illustrated as block 1904.T3 may be a timer corresponding to a time at which each transmission(via one or more of the electrodes of the stylus device) from the stylusdevice to the computing device occurs. The stylus device may create anoutput sequence to be transmitted to the computing device based on theencoding scheme (i.e., FSK, BPSK or ASK), output pressure levels of thepressure sensor, buttons, and other components of the stylus device,illustrated as block 1906. The output sequence may be the data thestylus device is to transmit to the computing device encoded with theappropriate encoding scheme (i.e. the output bit patterns the stylusdevice is to transmit to the computing device). The stylus devicepopulates a memory stack with output bit patterns, illustrated as block1908. The HV rail is then enabled, illustrated as block 1910, and thestack is popped and the output GPIO(s) is set to the current bit value(i.e. the first bit is written to the output GPIO(s)), illustrated asblock 1912. When the stack is popped the next bit pattern shifts to thetop of the stack and is ready to be written to the output GPIO(s). Thestylus device then sets a timer2 (T2) to an output frequency pulseperiod (i.e., the stylus may be transmitting 300 kHz), illustrated asblock 1914, and determines whether T2 has expired, illustrated as block1916.

If T2 has not expired, the stylus device continues to poll T2. Until T2has expired, the output GPIO is held at the current bit value. However,if T2 has expired, the stylus device determines whether the stack isempty, illustrated as block 1918. If the stack is not empty, the stylusdevice proceeds back to block 1912 to pop the stack (for example, toreveal the next bit pattern) and set the output GPIO(s) to the next bitvalue, and proceeds as described until all the bits in the stack havebeen written to the output GPIO(s). For example, the first bit is set onthe output GPIO(s), and when T2 has expired the second bit is set on theGPIO(s), and when T2 has expired the third bit is set on the GPIO(s),etc.

If the stack is empty, the stylus device disables the HV rail,illustrated as block 1920, and determines whether T3 has expired,illustrated as block 1922. If T3 has not expired, the stylus devicecontinues to poll T3. However, if T3 has expired, the stylus deviceproceeds to block 1906 to create an output sequence based on theencoding scheme and output pressure levels, and proceeds as describedabove. It should be appreciated that the different timers discussedabove may be set based on the encoding scheme or operation mode thestylus device is operating.

FIG. 20 is a block diagram conceptually illustrating example componentsof the computing device 104. In operation, the computing device 104 mayinclude computer-readable and computer-executable instructions thatreside on the computing device 104, as will be discussed further below.

As illustrated in FIG. 20, the computing device 104 may include anaddress/data bus 2002 for conveying data among components of thecomputing device 104. Each component within the computing device 104 mayalso be directly connected to other components in addition to (orinstead of) being connected to other components across the bus 2002.

The computing device 104 may include one or moremicrocontrollers/controllers/processors 2004 that may each include acentral processing unit (CPU) for processing data and computer-readableinstructions, and a memory 2006 for storing data and instructions. Thememory 2006 may include volatile random access memory (RAM),non-volatile read only memory (ROM), non-volatile magnetoresistive(MRAM) and/or other types of memory. The computing device 104 may alsoinclude a data storage component 2008, for storing data andmicrocontrollers/controller/processor-executable instructions (e.g.,instructions to perform one or more steps of the methods illustrated inFIGS. 14-19). The data storage component 2008 may include one or morenon-volatile storage types such as magnetic storage, optical storage,solid-state storage, etc. The computing device 104 may also be connectedto removable or external non-volatile memory and/or storage (such as aremovable memory card, memory key drive, networked storage, etc.)through the input/output device interfaces 2010.

Computer instructions for operating the device 110 and its variouscomponents may be executed by themicrocontroller(s)/controller(s)/processor(s) 2004, using the memory2006 as temporary “working” storage at runtime. The computerinstructions may be stored in a non-transitory manner in non-volatilememory 2006, storage 2008, or an external device. Alternatively, some orall of the executable instructions may be embedded in hardware orfirmware in addition to or instead of software.

The computing device 104 includes input/output device interfaces 2010. Avariety of components may be connected through the input/output deviceinterfaces 2010, such as a display 2012 having a touch surface or touchscreen 106; an audio output device for producing sound, such asspeaker(s) 2014; one or more audio capture device(s), such as amicrophone or an array of microphones 2016; one or more image and/orvideo capture devices, such as camera(s) 2018; one or more haptic effectgenerators 2020; and other components. The display 2012, speaker(s)2014, microphone(s) 2016, camera(s) 2018, haptic effect generator(s)2020, and other components may be integrated into the computing device104 or may be separate.

The display 2012 may be a video output device for displaying images. Thedisplay 2012 may be a display of any suitable technology, such as aliquid crystal display, an organic light emitting diode display,electronic paper, an electrochromic display, a cathode ray tube display,a pico projector or other suitable component(s). The display 2012 mayalso be integrated into the computing device 104 or may be separate.

The input/output device interfaces 2010 may also include an interfacefor an external peripheral device connection such as universal serialbus (USB), FireWire, Thunderbolt or other connection protocol. Theinput/output device interfaces 2010 may also include a connection to oneor more networks 2022 via an Ethernet port, a wireless local areanetwork (WLAN) (such as WiFi) radio, Bluetooth, and/or wireless networkradio, such as a radio capable of communication with a wirelesscommunication network such as a Long Term Evolution (LTE) network, WiMAXnetwork, 3G network, etc. A headset 2024 may connect to the computingdevice 104 via one of these connections.

The computing device 104 further includes a touch surface or touchscreen module 2026 that interacts with the stylus 102. The touch screenmodule 2026 may include a touch controller 2028 that may be located nearthe touch surface 106. The touch controller 2028 receives location andother information from, and may cause the transmission of informationto, the stylus 102 to enable the computing device 104 to interact withthe stylus 102. In an embodiment, the touch controller 2028 activates ordrives one or more antennae of the touchscreen to generate a signal,such as an electric field, that the stylus device 102 interacts with. Inan embodiment, the touch controller 2028 may scan, like a radio, forcertain frequencies. When the touch controller 2028 senses a stylusdevice, the touch controller 2028 may enter a stylus mode. Upon enteringthe stylus mode, the touch controller 2028 may convert the sensors ofthe computing device 104 to antenna mode, and listen for the stylusdevice 102 to determine or receive location of the stylus device 102 andother information from the stylus device.

It should be appreciated that one or more of the functional componentsillustrated in and described with reference to FIGS. 3-13 and 20 mayperform one or more of the steps of the methods illustrated in anddescribed with reference to FIGS. 14-19.

The above embodiments of the present disclosure are meant to beillustrative. They were chosen to explain the principles and applicationof the disclosure and are not intended to be exhaustive or to limit thedisclosure. Many modifications and variations of the disclosedembodiments may be apparent to those of skill in the art. Persons havingordinary skill in the field of computers, digital imaging and/or contentconversion, should recognize that components and process steps describedherein may be interchangeable with other components or steps, orcombinations of components or steps, and still achieve the benefits andadvantages of the present disclosure. Moreover, it should be apparent toone skilled in the art, that the disclosure may be practiced withoutsome or all of the specific details and steps disclosed herein.

The concepts disclosed herein may be applied within a number ofdifferent devices and computer systems, including, for example,general-purpose computing systems, televisions, stereos, radios,server-client computing systems, mainframe computing systems, telephonecomputing systems, laptop computers, cellular phones, personal digitalassistants (PDAs), tablet computers, wearable computing devices(watches, glasses, etc.), other mobile devices, etc.

Embodiments of the disclosed system may be implemented as a computermethod or as an article of manufacture such as a memory device ornon-transitory computer readable storage medium. The computer readablestorage medium may be readable by a computer and may compriseinstructions for causing a computer or other device to perform processesdescribed in the present disclosure. The computer readable storagemedium may be implemented by a volatile computer memory, non-volatilecomputer memory, hard drive, solid-state memory, flash drive, removabledisk and/or other media.

As used in this disclosure, the term “a” or “one” may include one ormore items unless specifically stated otherwise. Further, the phrase“based on” is intended to mean “based at least in part on” unlessspecifically stated otherwise.

What is claimed is:
 1. A method for configuring operation of a stylusdevice, the method comprising: operating the stylus device in a firstmode of a plurality of different modes, each different modecorresponding to one of a plurality of different encoding schemes and toone of a plurality of respective computer device touch controller types,wherein in the first mode the stylus device is not able to communicatewith a computing device; detecting, by the stylus device, physicalcontact; operating, by the stylus device, in a beacon mode in responseto the stylus device detecting the physical contact; transmitting, bythe stylus device in the beacon mode, a signal corresponding to arequest for first configuration information to a first computing device;receiving, by the stylus device, a first message to establish a firstcommunication channel, the first message received via a capacitive linkbetween the stylus device and the first computing device; receiving, bythe stylus device and over the first communication channel, a secondmessage from the first computing device, the second message includingthe first configuration information, the first configuration informationcomprising: an operating frequency, and a first identification codecorresponding to a first encoding scheme of the plurality of differentencoding schemes stored in a memory of the stylus device, the firstencoding scheme corresponding to a format for encoding data to be sentto the first computing device; identifying, by the stylus device andbased on the identification code, the first encoding scheme; configuringthe stylus device to operate using the first encoding scheme; sending athird message to the first computing device, wherein the stylus deviceencodes the data in the third message using the first encoding schemeand sends the data at the operating frequency.
 2. The method of claim 1,wherein the receiving the first message from the computing deviceincludes detecting a change in an electric field generated by the firstcomputing device.
 3. A method for configuring operation of a stylusdevice, comprising: operating the stylus device in a first mode of aplurality of different modes, each different mode corresponding to oneof a plurality of different encoding schemes and to one of a pluralityof respective computer device touch controller types, wherein in thefirst mode the stylus device is not able to communicate with a computingdevice; operating the stylus device in a beacon mode to establish acommunication connection with a first computing device; receiving, bythe stylus device, a first message from the first computing device overthe communication connection, the first message comprising firstconfiguration information for operating with the first computing device,the first configuration information including a first identificationcode; identifying, by the stylus device and based on the firstidentification code, a first encoding scheme of the plurality ofdifferent encoding schemes stored in a memory of the stylus device, thefirst encoding scheme corresponding to a format for encoding data to besent to the first computing device; and configuring the stylus device tooperate using the first encoding scheme.
 4. The method of claim 3,wherein the first configuration information further includes anoperating frequency.
 5. The method of claim 4, further comprisingsending a second message to the first computing device using the firstencoding scheme or the operating frequency.
 6. The method of claim 4,wherein the first encoding scheme includes a binary phase-shift keyingencoding scheme, an amplitude-shift keying encoding scheme, or afrequency-shift keying encoding scheme.
 7. A stylus device, comprising:a body portion having a first end and a second end; a tip coupled to thefirst end and adapted to interact with a touchscreen of a firstcomputing device; a communication device disposed in the stylus deviceand adapted to receive first configuration information from the firstcomputing device; and a microcontroller in communication with thecommunication device, the microcontroller adapted to: operate the stylusdevice in a first mode of a plurality of different modes, each differentmode corresponding to one of a plurality of different encoding schemesand to one of a plurality of respective computer device touch controllertypes, wherein in the first mode the stylus device is not able tocommunicate with a computing device; store the plurality of encodingschemes corresponding to respective identification codes, the firstconfiguration information including a first identification code;identify a first encoding scheme of the plurality of different encodingschemes stored in the memory of the stylus device, the first encodingscheme corresponding to the first identification code; configure thestylus device to operate using the first encoding scheme.
 8. The stylusdevice of claim 7, wherein the first configuration information furtherincludes an operating frequency.
 9. The stylus device of claim 8,wherein the stylus device is adapted to send a message to the firstcomputing device using the first encoding scheme or the operatingfrequency.
 10. The stylus device of claim 8, wherein the first encodingscheme includes a binary phase-shift keying encoding scheme, anamplitude-shift keying encoding scheme, or a frequency-shift keyingencoding scheme.
 11. The stylus device of claim 7, wherein: the tipincludes an electrode; the body portion includes a body electrodedisposed within an interior of the body portion; and the stylus devicefurther comprises a ferrule electrode disposed between the tip and thebody portion.
 12. The stylus device of claim 11, wherein the firstencoding scheme is a binary phase-shift keying encoding scheme and theelectrode, the body electrode, and the ferrule electrode are active. 13.The stylus device of claim 11, wherein the first encoding scheme is anamplitude-shift keying encoding scheme and the electrode or theelectrode and the ferrule electrode are active.
 14. The stylus device ofclaim 11, wherein the first encoding scheme is a frequency-shift keyingencoding scheme and the electrode is active.
 15. A computing device,comprising: at least one processor; a touch controller in communicationwith the at least one processor; and at least one memory deviceincluding instructions operable to be executed by the at least oneprocessor to perform a set of actions, configuring the at least oneprocessor to: detect a stylus device comprising a plurality of differentencoding schemes stored on the stylus device; send a message to thestylus device, the message including configuration information includingan identification code relating to a first encoding scheme of theplurality of encoding schemes, the first encoding scheme correspondingto a first mode of the stylus device and enabling the stylus device tooperate with the computing device, the first mode corresponding to atouch controller type of the touch controller; and identify the firstencoding scheme based on the identification code.
 16. The computingdevice of claim 15, wherein the at least one processor is furtherconfigured to send the message in response to detecting the stylusdevice.
 17. The computing device of claim 15, wherein the configurationinformation further includes an operating frequency.
 18. The computingdevice of claim 17, wherein the at least one processor is furtherconfigured to receive a second message from the stylus device, whereinthe stylus device is operating using the first encoding scheme or theoperating frequency.